#e
#Title[zNup[vRC@I@C[Wv]
#Text[gE}̈B]
#ScriptVersion[2]
script_enemy_main
{
	let scroll=0;
	let flag=0;
	let cx=GetCenterX();//STGV[̒SxW擾
	let cy=GetCenterY();//STGV[̒SyW擾
	let boss=GetCurrentScriptDirectory~"img\boss7-2.png";
	let eye=GetCurrentScriptDirectory~"img\bg7-1.png";
	let asa=GetCurrentScriptDirectory~"img\bg7-2.png";
	LoadUserShotData(GetCurrentScriptDirectory~"shot.txt");
	@Initialize
	{
		SetScore(30000);
		SetLife(600);
		SetDamageRate(10,0);
		SetMovePosition02(cx,cy-60,60);
		SetTimer(80);
		SetInvincibility(60);
		LoadGraphic(boss);
		LoadGraphic(eye);
		LoadGraphic(asa);
		shottask;
		drawtask;
		bombtask;
		CutIn(YOUMU,"zNup[vRC@I@C[Wv",0,0,0,0,0);//XyJ[h\
	}
	@MainLoop
	{
		yield;
	}
	@Finalize
	{
		loop(16)
		{
			CreateItem(ITEM_SCORE,GetX+rand(-30,30),GetY+rand(-30,30));
		}
		CreateItem(ITEM_BOMB,GetX,GetY);
		DeleteGraphic(boss);
		DeleteGraphic(eye);
		DeleteGraphic(asa);
	}
	@DrawLoop
	{
		SetTexture(boss);	
		if(flag==1)
		{
			SetGraphicRect(52,0,81,63);
		}
		else if(flag==2)
		{
			SetGraphicRect(24,0,52,63);
		}
		else
		{
			SetGraphicRect(0,0,24,63);
		}
		SetGraphicScale(1,1);
		SetGraphicAngle(0,0,0);
		DrawGraphic(GetX,GetY);
	}
	@BackGround
	{
		SetColor(128,128,128);
		SetTexture(eye);	
		SetGraphicRect(0,0,384,448);
		SetAlpha(255);
		SetGraphicScale(1,1);
		SetGraphicAngle(0,0,0);
		DrawGraphic(cx,cy);
		SetColor(255,255,255);
		SetTexture(asa);	
		SetGraphicRect(0,0,888,189*5);
		SetAlpha(64);
		SetGraphicScale(0.5,0.75);
		SetGraphicAngle(0,0,0);
		DrawGraphic(cx+scroll,cy);
		DrawGraphic(cx+scroll-444,cy);
		if(scroll>444)
		{
			scroll=0;
		}
	}
	task shottask
	{
		wait(120);
		loop
		{
			SetShotColor(0,255,0);
			shot(GetX-80,GetY-88,0,255,0);
			shot(GetX-80,GetY-72,0,255,0);
			shot(GetX-80,GetY-56,0,255,0);
			shot(GetX-80,GetY-40,0,255,0);
			shot(GetX-64,GetY-104,0,255,0);
			shot(GetX-64,GetY-56,0,255,0);
			shot(GetX-64,GetY-40,0,255,0);
			shot(GetX-48,GetY-104,0,255,0);
			shot(GetX-48,GetY-88,0,255,0);
			shot(GetX-48,GetY-72,0,255,0);
			shot(GetX-48,GetY-56,0,255,0);
			shot(GetX-32,GetY-104,0,255,0);
			shot(GetX-32,GetY-72,0,255,0);
			shot(GetX-32,GetY-56,0,255,0);
			shot(GetX+32,GetY-104,0,255,0);
			shot(GetX+32,GetY-88,0,255,0);
			shot(GetX+32,GetY-72,0,255,0);
			shot(GetX+32,GetY-40,0,255,0);
			shot(GetX+48,GetY-56,0,255,0);
			shot(GetX+48,GetY-40,0,255,0);
			shot(GetX+64,GetY-56,0,255,0);
			shot(GetX+64,GetY-40,0,255,0);
			shot(GetX+80,GetY-40,0,255,0);
			shot(GetX+96,GetY-104,0,255,0);
			shot(GetX+96,GetY-88,0,255,0);
			shot(GetX+96,GetY-72,0,255,0);
			shot(GetX+96,GetY-40,0,255,0);
			shot(GetX+96,GetY-24,0,255,0);
			shot(GetX+112,GetY-104,0,255,0);
			shot(GetX+112,GetY-88,0,255,0);
			shot(GetX+112,GetY-72,0,255,0);
			shot(GetX+112,GetY-40,0,255,0);
			shot(GetX+112,GetY-24,0,255,0);
			shot(GetX+128,GetY-104,0,255,0);
			shot(GetX+128,GetY-88,0,255,0);
			shot(GetX+128,GetY-72,0,255,0);
			shot(GetX+128,GetY-40,0,255,0);
			shot(GetX+144,GetY-104,0,255,0);
			shot(GetX+144,GetY-88,0,255,0);
			shot(GetX+144,GetY-72,0,255,0);
			shot(GetX+144,GetY-56,0,255,0);
			shot(GetX+160,GetY-104,0,255,0);
			shot(GetX+160,GetY-88,0,255,0);
			shot(GetX+160,GetY-72,0,255,0);
			shot(GetX+160,GetY-56,0,255,0);

			shot(GetX-128,GetY+8,0,255,0);
			shot(GetX-128,GetY+24,0,255,0);
			shot(GetX-112,GetY-8,0,255,0);
			shot(GetX-112,GetY+8,0,255,0);
			shot(GetX-112,GetY+24,0,255,0);
			shot(GetX-112,GetY+40,0,255,0);
			shot(GetX-96,GetY-8,0,255,0);
			shot(GetX-96,GetY+8,0,255,0);
			shot(GetX-96,GetY+24,0,255,0);
			shot(GetX-96,GetY+40,0,255,0);
			shot(GetX-80,GetY-8,0,255,0);
			shot(GetX-80,GetY+8,0,255,0);
			shot(GetX-80,GetY+24,0,255,0);
			shot(GetX-80,GetY+40,0,255,0);
			shot(GetX-64,GetY-8,0,255,0);
			shot(GetX-64,GetY+8,0,255,0);
			shot(GetX-64,GetY+24,0,255,0);
			shot(GetX-64,GetY+40,0,255,0);
			shot(GetX-48,GetY+24,0,255,0);
			shot(GetX-48,GetY+40,0,255,0);
			shot(GetX-48,GetY+56,0,255,0);
			shot(GetX-32,GetY+24,0,255,0);
			shot(GetX-32,GetY+40,0,255,0);
			shot(GetX-16,GetY-8,0,255,0);
			shot(GetX-16,GetY+8,0,255,0);
			shot(GetX,GetY-8,0,255,0);
			shot(GetX,GetY+8,0,255,0);
			shot(GetX,GetY+24,0,255,0);
			shot(GetX+16,GetY-8,0,255,0);
			shot(GetX+16,GetY+8,0,255,0);
			shot(GetX+16,GetY+24,0,255,0);
			shot(GetX+32,GetY-8,0,255,0);
			shot(GetX+32,GetY+8,0,255,0);
			shot(GetX+32,GetY+24,0,255,0);
			shot(GetX+48,GetY+24,0,255,0);
			shot(GetX+64,GetY+24,0,255,0);
			shot(GetX+64,GetY+40,0,255,0);
			shot(GetX+80,GetY-8,0,255,0);
			shot(GetX+80,GetY+8,0,255,0);
			shot(GetX+80,GetY+24,0,255,0);

			shot(GetX-128,GetY+120,0,255,0);
			shot(GetX-128,GetY+136,0,255,0);
			shot(GetX-112,GetY+104,0,255,0);
			shot(GetX-112,GetY+120,0,255,0);
			shot(GetX-112,GetY+136,0,255,0);
			shot(GetX-112,GetY+152,0,255,0);
			shot(GetX-96,GetY+88,0,255,0);
			shot(GetX-96,GetY+104,0,255,0);
			shot(GetX-96,GetY+120,0,255,0);
			shot(GetX-80,GetY+88,0,255,0);
			shot(GetX-80,GetY+104,0,255,0);
			shot(GetX-80,GetY+120,0,255,0);
			shot(GetX-64,GetY+104,0,255,0);

			shot(GetX+112,GetY+40,0,255,0);
			shot(GetX+128,GetY+40,0,255,0);
			shot(GetX+128,GetY+56,0,255,0);
			shot(GetX+128,GetY+72,0,255,0);
			shot(GetX+128,GetY+88,0,255,0);
			shot(GetX+144,GetY+40,0,255,0);
			shot(GetX+144,GetY+56,0,255,0);
			shot(GetX+144,GetY+72,0,255,0);
			shot(GetX+144,GetY+88,0,255,0);

			SetShotColor(0,128,0);

			shot(GetX-64,GetY-152,0,128,0);
			shot(GetX-64,GetY-136,0,128,0);
			shot(GetX-64,GetY-120,0,128,0);
			shot(GetX-48,GetY-152,0,128,0);
			shot(GetX-48,GetY-136,0,128,0);
			shot(GetX-48,GetY-120,0,128,0);
			shot(GetX-32,GetY-152,0,128,0);
			shot(GetX-32,GetY-136,0,128,0);
			shot(GetX-32,GetY-120,0,128,0);
			shot(GetX-16,GetY-152,0,128,0);
			shot(GetX-16,GetY-136,0,128,0);
			shot(GetX-16,GetY-120,0,128,0);
			shot(GetX,GetY-152,0,128,0);
			shot(GetX,GetY-136,0,128,0);
			shot(GetX,GetY-120,0,128,0);
			shot(GetX+16,GetY-152,0,128,0);
			shot(GetX+16,GetY-136,0,128,0);
			shot(GetX+16,GetY-120,0,128,0);
			shot(GetX+32,GetY-152,0,128,0);
			shot(GetX+32,GetY-136,0,128,0);
			shot(GetX+32,GetY-120,0,128,0);
			shot(GetX+48,GetY-152,0,128,0);
			shot(GetX+48,GetY-136,0,128,0);
			shot(GetX+48,GetY-120,0,128,0);
			shot(GetX+64,GetY-152,0,128,0);
			shot(GetX+64,GetY-136,0,128,0);
			shot(GetX+64,GetY-120,0,128,0);
			shot(GetX+80,GetY-136,0,128,0);
			shot(GetX+80,GetY-120,0,128,0);
			shot(GetX+96,GetY-136,0,128,0);
			shot(GetX+96,GetY-120,0,128,0);
			shot(GetX+112,GetY-136,0,128,0);
			shot(GetX+112,GetY-120,0,128,0);

			shot(GetX-48,GetY-8,0,128,0);
			shot(GetX-48,GetY+8,0,128,0);
			shot(GetX-32,GetY-8,0,128,0);
			shot(GetX-32,GetY+8,0,128,0);

			shot(GetX+48,GetY-8,0,128,0);
			shot(GetX+48,GetY+8,0,128,0);
			shot(GetX+64,GetY-8,0,128,0);
			shot(GetX+64,GetY+8,0,128,0);

			shot(GetX-80,GetY+56,0,128,0);
			shot(GetX-80,GetY+72,0,128,0);
			shot(GetX-64,GetY+56,0,128,0);
			shot(GetX-64,GetY+72,0,128,0);
			shot(GetX-64,GetY+88,0,128,0);
			shot(GetX-64,GetY+120,0,128,0);
			shot(GetX-64,GetY+136,0,128,0);
			shot(GetX-48,GetY+72,0,128,0);
			shot(GetX-48,GetY+88,0,128,0);
			shot(GetX-48,GetY+104,0,128,0);
			shot(GetX-48,GetY+120,0,128,0);
			shot(GetX-48,GetY+136,0,128,0);
			shot(GetX-32,GetY+56,0,128,0);
			shot(GetX-32,GetY+72,0,128,0);
			shot(GetX-32,GetY+88,0,128,0);
			shot(GetX-32,GetY+104,0,128,0);
			shot(GetX-32,GetY+120,0,128,0);
			shot(GetX-32,GetY+136,0,128,0);
			shot(GetX-16,GetY+24,0,128,0);
			shot(GetX-16,GetY+40,0,128,0);
			shot(GetX-16,GetY+88,0,128,0);
			shot(GetX-16,GetY+104,0,128,0);
			shot(GetX-16,GetY+120,0,128,0);
			shot(GetX-16,GetY+136,0,128,0);
			shot(GetX,GetY+40,0,128,0);
			shot(GetX,GetY+88,0,128,0);
			shot(GetX,GetY+104,0,128,0);
			shot(GetX,GetY+120,0,128,0);
			shot(GetX,GetY+136,0,128,0);
			shot(GetX+16,GetY+40,0,128,0);
			shot(GetX+16,GetY+56,0,128,0);
			shot(GetX+16,GetY+72,0,128,0);
			shot(GetX+16,GetY+88,0,128,0);
			shot(GetX+16,GetY+104,0,128,0);
			shot(GetX+16,GetY+120,0,128,0);
			shot(GetX+32,GetY+40,0,128,0);
			shot(GetX+32,GetY+56,0,128,0);
			shot(GetX+32,GetY+72,0,128,0);
			shot(GetX+32,GetY+88,0,128,0);
			shot(GetX+32,GetY+104,0,128,0);
			shot(GetX+32,GetY+120,0,128,0);
			shot(GetX+48,GetY+40,0,128,0);
			shot(GetX+48,GetY+56,0,128,0);
			shot(GetX+48,GetY+72,0,128,0);
			shot(GetX+48,GetY+88,0,128,0);
			shot(GetX+48,GetY+104,0,128,0);
			shot(GetX+64,GetY+88,0,128,0);
			shot(GetX+64,GetY+104,0,128,0);
			shot(GetX+80,GetY+40,0,128,0);
			shot(GetX+80,GetY+88,0,128,0);
			shot(GetX+80,GetY+104,0,128,0);
			shot(GetX+96,GetY+72,0,128,0);
			shot(GetX+96,GetY+88,0,128,0);
			shot(GetX+96,GetY+104,0,128,0);
			shot(GetX+112,GetY+72,0,128,0);
			shot(GetX+112,GetY+88,0,128,0);
			shot(GetX+112,GetY+104,0,128,0);

			SetShotColor(255,255,128);

			shot(GetX-64,GetY-88,255,255,128);
			shot(GetX-64,GetY-72,255,255,128);
			shot(GetX-48,GetY-40,255,255,128);
			shot(GetX-48,GetY-24,255,255,128);
			shot(GetX-32,GetY-88,255,255,128);
			shot(GetX-32,GetY-40,255,255,128);
			shot(GetX-32,GetY-24,255,255,128);
			shot(GetX-16,GetY-104,255,255,128);
			shot(GetX-16,GetY-88,255,255,128);
			shot(GetX-16,GetY-72,255,255,128);
			shot(GetX-16,GetY-56,255,255,128);
			shot(GetX-16,GetY-40,255,255,128);
			shot(GetX-16,GetY-24,255,255,128);
			shot(GetX,GetY-104,255,255,128);
			shot(GetX,GetY-88,255,255,128);
			shot(GetX,GetY-72,255,255,128);
			shot(GetX,GetY-56,255,255,128);
			shot(GetX,GetY-40,255,255,128);
			shot(GetX,GetY-24,255,255,128);
			shot(GetX+16,GetY-104,255,255,128);
			shot(GetX+16,GetY-88,255,255,128);
			shot(GetX+16,GetY-72,255,255,128);
			shot(GetX+16,GetY-56,255,255,128);
			shot(GetX+16,GetY-40,255,255,128);
			shot(GetX+16,GetY-24,255,255,128);
			shot(GetX+32,GetY-56,255,255,128);
			shot(GetX+32,GetY-24,255,255,128);
			shot(GetX+48,GetY-104,255,255,128);
			shot(GetX+48,GetY-88,255,255,128);
			shot(GetX+48,GetY-72,255,255,128);
			shot(GetX+48,GetY-24,255,255,128);
			shot(GetX+64,GetY-104,255,255,128);
			shot(GetX+64,GetY-88,255,255,128);
			shot(GetX+64,GetY-72,255,255,128);
			shot(GetX+64,GetY-24,255,255,128);
			shot(GetX+80,GetY-88,255,255,128);
			shot(GetX+80,GetY-72,255,255,128);
			shot(GetX+80,GetY-56,255,255,128);
			shot(GetX+80,GetY-24,255,255,128);
			shot(GetX+96,GetY-56,255,255,128);
			shot(GetX+112,GetY-168,255,255,128);
			shot(GetX+112,GetY-152,255,255,128);
			shot(GetX+112,GetY-56,255,255,128);
			shot(GetX+128,GetY-168,255,255,128);
			shot(GetX+128,GetY-152,255,255,128);
			shot(GetX+128,GetY-136,255,255,128);
			shot(GetX+128,GetY-120,255,255,128);
			shot(GetX+128,GetY-56,255,255,128);
			shot(GetX+144,GetY-168,255,255,128);
			shot(GetX+144,GetY-152,255,255,128);
			shot(GetX+144,GetY-136,255,255,128);
			shot(GetX+144,GetY-120,255,255,128);
			shot(GetX+160,GetY-168,255,255,128);
			shot(GetX+160,GetY-152,255,255,128);
			shot(GetX+160,GetY-136,255,255,128);
			shot(GetX+160,GetY-120,255,255,128);

			shot(GetX-160,GetY+40,255,255,128);
			shot(GetX-160,GetY+56,255,255,128);
			shot(GetX-144,GetY+40,255,255,128);
			shot(GetX-144,GetY+56,255,255,128);
			shot(GetX-144,GetY+72,255,255,128);
			shot(GetX-128,GetY+40,255,255,128);
			shot(GetX-128,GetY+56,255,255,128);
			shot(GetX-128,GetY+72,255,255,128);
			shot(GetX-112,GetY+56,255,255,128);

			shot(GetX-16,GetY+56,255,255,128);
			shot(GetX-16,GetY+72,255,255,128);
			shot(GetX,GetY+56,255,255,128);
			shot(GetX,GetY+72,255,255,128);
			shot(GetX+64,GetY+56,255,255,128);
			shot(GetX+64,GetY+72,255,255,128);
			shot(GetX+80,GetY+56,255,255,128);
			shot(GetX+80,GetY+72,255,255,128);
			SetShotColor(160,64,0);
			shot(GetX-144,GetY+152,160,64,0);
			shot(GetX-144,GetY+168,160,64,0);
			shot(GetX-128,GetY+152,160,64,0);
			shot(GetX-128,GetY+168,160,64,0);
			SetShotColor(255,255,255);
			wait(180);
		}
		
	}
	task drawtask
	{
		let x=0;
		loop
		{	
			if(GetX>x+0.5)
			{
				flag=1;
			}
			else if(GetX<x-0.5)
			{
				flag=2;
			}
			else
			{
				flag=0;
			}
			x=GetX;
			scroll++;
			yield;
		}
	}
	task bombtask
	{
		loop
		{
			if(OnBomb)
			{
				SetAlpha(64);
				SetDamageRate(0,0);
			}
			else
			{
				SetAlpha(255);
				SetDamageRate(10,0);
				SetCollisionA(GetX(),GetY(),24);
				SetCollisionB(GetX(),GetY(),24);
			}
			yield;
		}
	}

	function shot(let x,let y,let r,let g,let b)
	{
		CreateShotA(0,x,y,30);
		SetShotDataA(0,0,0,rand_int(2,4)*90+rand(-3,3),0,0,0,253);
		SetShotDataA(0,30,0,NULL,0,0.06,4,253);
		SetShotDataA(0,90,NULL,NULL,0,-0.02,0,253);
		SetShotKillTime(0,121);
		AddShot(120,0,1,0);
		AddShot(120,0,2,0);
		SetShotColor(255,255,255);
		CreateShotA(1,0,0,10);
		SetShotDataA(1,0,1.2,90,0,-0.01,1,26);
		SetShotColor(255,64,255);
		CreateShotA(2,0,0,10);
		SetShotDataA(2,0,1.2,90,0,-0.01,1,121);
		FireShot(0);
		SetShotColor(r,g,b);
	}
	function wait(w) 
	{
		loop(w)
		{
			yield;
		}
	}
}